//estimation de variance dans le cadre de l'échantillonage d'importance
n=10000;
function [y]=h(x);
  y=cos(%pi*x/2)/((3/2)*(1-x^2));
endfunction
//on calcule d'abord la variance pour la méthode 1
v1=0;
for i=1:(2*n)
  u1=rand();
  u2=rand();
  v1=v1+(cos(%pi*u1/2)-cos(%pi*u2/2))^2;
end
v1=v1/(2*n);
//puis pour la méthode 2
v2=0;
for i=1:(2*n)
  //on utilise ici une méthode d'acceptation-rejet
  b=0;
  while (b==0)
    u=rand();
    x=rand();
    if (u<(1-x^2)) then
     b=1;
    end,
  end
  z1=x;
  b=0;
  while (b==0)
    u=rand();
    x=rand();
    if (u<(1-x^2)) then
     b=1;
    end,
  end
  z2=x;
  v2=v2+(h(z1)-h(z2))^2;
end
z2=z2/(2*n);
"z1";z1
"z2"; z2
"z1/z2";z2/z1

